﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using UricaoWeb.LogicaDeNegocios.Checkin_Checkout;

namespace UricaoWeb.Presentacion
{
    public partial class API_checkin_MostrarCuentas : API_Seguridad_Principal

    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var master = Master as MasterPage;
            if (master != null)
            {
                master.actualizar_label();
            }
            base.validar_usuario();
            cargarTabla1();
            cargarTabla2();
            cargarTabla3();
            GridView_ConsultarTour.Visible = true;
        }


        //carga el datagridview de tour
        public void cargarTabla1()
        {
            try
            {

                int total=0; 
                DataTable _miTabla = new DataTable();
                CuentaClienteTour[] _listaCuentaCliente = LogicaCheckin.BuscarCuentasClientesTour(ControladorCheckin.NumHabitacionConsultaCuenta);

                _miTabla.Columns.Add("NombreTour ", typeof(string));
                _miTabla.Columns.Add("nroPersonas", typeof(int));
                _miTabla.Columns.Add("Precio", typeof(int));
                _miTabla.Columns.Add("FechaTour ", typeof(string));

                foreach (CuentaClienteTour cuenta in _listaCuentaCliente)
                {
                    total = total + cuenta.PrecioTotal;
                    _miTabla.Rows.Add(cuenta.NombreTour1,cuenta.PersonasReserva1,cuenta.PrecioTotal,cuenta.FechaReserva);
                  
                }
                totalTour.Text = total.ToString();
                GridView_ConsultarTour.DataSource = _miTabla;
                GridView_ConsultarTour.DataBind();
            }
            catch (NullReferenceException e)
            {
               // throw new CargoBDExcepcion(_codigoErrorExcepcion, _mensajeExcepcionNullObject, e);
            }

        }

        //carga el datagridview de Restaurant
        public void cargarTabla2()
        {
            try
            {

                int total = 0;
                DataTable _miTabla = new DataTable();
                CuentaClienteRestaurant[] _listaCuentaRestaurant = LogicaCheckin.BuscarCuentasClientesRestaurant(ControladorCheckin.NumHabitacionConsultaCuenta);

                _miTabla.Columns.Add("FechaConsumo ", typeof(string));
                _miTabla.Columns.Add("IdPlato", typeof(int));
                _miTabla.Columns.Add("NombrePlato", typeof(string));
                _miTabla.Columns.Add("Precio", typeof(int));
                

                foreach (CuentaClienteRestaurant cuenta in _listaCuentaRestaurant)
                {
                    total = total + cuenta.PrecioPlato;
                    _miTabla.Rows.Add(cuenta.FechaConsumo, cuenta.IdPlato, cuenta.NombrePlato, cuenta.PrecioPlato);
                }
                GridView_COnsultarRestaurant.DataSource = _miTabla;
                GridView_COnsultarRestaurant.DataBind();
                TotalRest.Text = total.ToString();
            }
            catch (NullReferenceException e)
            {
                // throw new CargoBDExcepcion(_codigoErrorExcepcion, _mensajeExcepcionNullObject, e);
            }

        }

        //carga el datagridview de RoomService
        public void cargarTabla3()
        {
            try
            {

                int total = 0;
                DataTable _miTabla = new DataTable();
                CuentaClienteRoom[] _listaCuentaRoom = LogicaCheckin.BuscarCuentasClientesRoomService(ControladorCheckin.NumHabitacionConsultaCuenta);

                
                _miTabla.Columns.Add("IdPlato", typeof(int));
                _miTabla.Columns.Add("NombrePlato", typeof(string));
                _miTabla.Columns.Add("Precio", typeof(int));


                foreach (CuentaClienteRoom cuenta in _listaCuentaRoom)
                {
                    total = total + cuenta.PrecioPlato;
                    _miTabla.Rows.Add(cuenta.IdPlato, cuenta.NombrePlato, cuenta.PrecioPlato);
                }
                GridView_ConsultarRoom.DataSource = _miTabla;
                GridView_ConsultarRoom.DataBind();
                TotalRoom.Text = total.ToString();
            }
            catch (NullReferenceException e)
            {
                // throw new CargoBDExcepcion(_codigoErrorExcepcion, _mensajeExcepcionNullObject, e);
            }

        }


    }
}